//柯里化演示

//1.优化前(虽然是纯函数，但是有硬代码min = 18)
// function checkAge(age) {
//     let min = 18;
//     return age >= min;
// }


// //2.优化为普通纯函数
// function checkAge(age, min) {
//     return age >= min;
// }

// console.log(checkAge(18, 20));
// console.log(checkAge(18, 24));
// console.log(checkAge(12, 24));


// //3.再次优化(函数的柯里化)
// function checkAge(min) {
//     return function (age) {
//         return age >= min;
//     }
// }

// //基准值18
// let checkAge18 = checkAge(18);
// //基准值20
// let checkAge20 = checkAge(20);

// console.log(checkAge18(20));
// console.log(checkAge20(24));


//4.再次优化(使用es6语法，箭头函数)

checkAge = min => age => age >= min;

//基准值18
let checkAge18 = checkAge(18);

//基准值20
let checkAge20 = checkAge(20);

console.log(checkAge18(8));
console.log(checkAge20(24));
